package cn.quevo.ucenter.server.service;

import cn.quevo.core.exception.CustomException;
import cn.quevo.ucenter.server.entity.OauthCode;
import cn.quevo.ucenter.server.entity.query.OauthCodeQuery;

/**
 * 授权码接口
 * 
 * @author July july_sky@foxmail.com
 * @date 2018年3月23日 上午11:10:19
 * @Copyright ©2015-2035 湘豫(北京)科技有限公司. All Rights Reserved.
 * @version 1.0
 */
public interface OauthCodeService {

    /**
     * 创建授权码
     * 
     * @author July july_sky@foxmail.com
     * @date 2018年3月23日 上午11:22:37
     * @param oauthCode
     * @return
     * @throws CustomException
     */
    Integer createOauthCode(OauthCode oauthCode) throws CustomException;

    /**
     * 删除授权码
     * 
     * @author July july_sky@foxmail.com
     * @date 2018年3月23日 上午11:23:02
     * @param oauthCode
     * @return
     * @throws CustomException
     */
    Integer deleteOauthCode(OauthCode oauthCode) throws CustomException;

    /**
     * 获取授权码对象
     * 
     * @author July july_sky@foxmail.com
     * @date 2018年3月23日 上午11:28:18
     * @param oauthCodeQuery
     * @return
     * @throws CustomException
     */
    OauthCode getOauthCode(OauthCodeQuery oauthCodeQuery) throws CustomException;
}
